@tailwind base;
@tailwind components;
@tailwind utilities;

.chart-tooltip {
	z-index: 999999 !important;
	pointer-events: none !important;
}

.recharts-tooltip-wrapper {
	z-index: 999999 !important;
}

.recharts-legend-wrapper {
	z-index: 1 !important;
}

.recharts-wrapper {
	overflow: visible !important;
}

@layer base {
	:root {
		--background: 0 0% 100%;
		--foreground: 222.2 84% 4.9%;

		--card: 0 0% 100%;
		--card-foreground: 222.2 84% 4.9%;

		--popover: 0 0% 100%;
		--popover-foreground: 222.2 84% 4.9%;

		--primary: 222.2 47.4% 11.2%;
		--primary-foreground: 210 40% 98%;

		--secondary: 210 40% 96.1%;
		--secondary-foreground: 222.2 47.4% 11.2%;

		--muted: 210 40% 96.1%;
		--muted-foreground: 215.4 16.3% 46.9%;

		--accent: 210 40% 96.1%;
		--accent-foreground: 222.2 47.4% 11.2%;

		--destructive: 0 84.2% 60.2%;
		--destructive-foreground: 210 40% 98%;

		--border: 214.3 31.8% 91.4%;
		--input: 214.3 31.8% 91.4%;
		--ring: 222.2 84% 4.9%;

		--radius: 0.5rem;
	}

	.dark {
		--background: 222.2 84% 4.9%;
		--foreground: 210 40% 98%;

		--card: 222.2 84% 4.9%;
		--card-foreground: 210 40% 98%;

		--popover: 222.2 84% 4.9%;
		--popover-foreground: 210 40% 98%;

		--primary: 210 40% 98%;
		--primary-foreground: 222.2 47.4% 11.2%;

		--secondary: 217.2 32.6% 17.5%;
		--secondary-foreground: 210 40% 98%;

		--muted: 217.2 32.6% 17.5%;
		--muted-foreground: 215 20.2% 65.1%;

		--accent: 217.2 32.6% 17.5%;
		--accent-foreground: 210 40% 98%;

		--destructive: 0 62.8% 30.6%;
		--destructive-foreground: 210 40% 98%;

		--border: 217.2 32.6% 17.5%;
		--input: 217.2 32.6% 17.5%;
		--ring: 212.7 26.8% 83.9%;
	}
}

@layer base {
	* {
		@apply border-border;
	}
	body {
		@apply bg-background text-foreground;
	}
}

/* Thin scrollbar for Single Line Mode in MultiSelect */
.multiselect-singleline-scroll {
	scrollbar-width: thin;
	scrollbar-color: hsl(var(--border) / 0.4) transparent;
}

.multiselect-singleline-scroll::-webkit-scrollbar {
	height: 4px;
}

.multiselect-singleline-scroll::-webkit-scrollbar-track {
	background: transparent;
}

.multiselect-singleline-scroll::-webkit-scrollbar-thumb {
	background-color: hsl(var(--border) / 0.3);
	border-radius: 2px;
	transition: background-color 0.2s ease, opacity 0.2s ease;
	opacity: 0.7;
}

.multiselect-singleline-scroll::-webkit-scrollbar-thumb:hover {
	background-color: hsl(var(--border) / 0.6);
	opacity: 1;
}

/* Scrollbar becomes more visible when actively scrolling */
.multiselect-singleline-scroll:active::-webkit-scrollbar-thumb {
	background-color: hsl(var(--border) / 0.7);
	opacity: 1;
}

/* Dark theme adjustments - make scrollbar slightly more visible */
.dark .multiselect-singleline-scroll {
	scrollbar-color: hsl(var(--border) / 0.5) transparent;
}

.dark .multiselect-singleline-scroll::-webkit-scrollbar-thumb {
	background-color: hsl(var(--border) / 0.5);
}

.dark .multiselect-singleline-scroll::-webkit-scrollbar-thumb:hover {
	background-color: hsl(var(--border) / 0.8);
}

/* Table of Contents scrollbar */
.table-of-contents-scroll {
	scrollbar-width: thin;
	scrollbar-color: hsl(var(--border) / 0.3) transparent;
}

.table-of-contents-scroll::-webkit-scrollbar {
	width: 4px;
}

.table-of-contents-scroll::-webkit-scrollbar-track {
	background: transparent;
}

.table-of-contents-scroll::-webkit-scrollbar-thumb {
	background-color: hsl(var(--border) / 0.3);
	border-radius: 2px;
	transition: background-color 0.2s ease;
}

.table-of-contents-scroll::-webkit-scrollbar-thumb:hover {
	background-color: hsl(var(--border) / 0.6);
}
